home *** CD-ROM | disk | FTP | other *** search
/ Risc World 3 / Risc World 3.iso / SOFTWARE / ISSUE4 / POWERBASE / LABEL / !PrintLbls / !Help < prev    next >
Text File  |  2000-03-01  |  16KB  |  342 lines

  1. ----------------------------------------------------------------------------
  2. File:           Help text file (ASCII)
  3. Date:           24th June 1995
  4. Application:    !PrintLbls
  5. Version:        1.36 (27 February 2000)
  6. Author:         Steven Haslam (slightly altered by H.Bazley)
  7. Purpose:        Label printing using outline fonts and RISC-OS PDrivers
  8. ----------------------------------------------------------------------------
  9.  
  10.         !PrintLbls I wrote to be able to print labels of a standard rather
  11. superior to draft printed labels usually found on mailshots, council letters
  12. etc. etc. The idea was to take a simply-structured file and convert it to
  13. labels that were in outline fonts, to allow maximal impression on
  14. recipients.
  15.  
  16.         I decided that it was best to use the outline fonts for this, and
  17. also to use the RISC-OS printer drivers, despite all the problems this may
  18. cause.
  19.  
  20.         I decided on Comma Separated Value files for input: this is fairly
  21. standard for many applications, and is easy to create and understand. (it is
  22. also incidentally the format for !1stMail merging)
  23.  
  24.         Version 0.90, which was uploaded to various bulletin boards and
  25. dated 23 May, was very poor and only just worked in a very limited fashion.
  26. It allowed user-selectable fonts for the first line, middle lines and last
  27. line. it also allowed the first line to be bigger (or smaller). However, it
  28. assumed that the user used the same labels as I did and that they set up the
  29. printer driver right! (This printer driver problem still exists).
  30.  
  31.         Then, I was sent a letter by someone who was having trouble with it,
  32. because they were using it on a two-stock label page with a laser printer.
  33. Therefore, I decided that since it might be used, it ought to be usable.
  34.  
  35.         Versions 1.00 and 1.10 came into being on the same day. Version 1.00
  36. allowed setting up by writing a text file containing the label measurements.
  37. In 1.10 (this afternoon) I added a window, sprite and icons so that
  38. measurements could be entered straight into the program.
  39.  
  40.         Version 1.11 allows the user to set the indentation per line,
  41. allowing labels to be printed with each line starting at the same position
  42. on the left. It is even possible to get the address to slope backwards by
  43. using a negative value. There has been some internal tidying up, including
  44. bugfixes if a ridiculous point size is entered, or no units are put on.
  45. Version 1.11 does not require that you open the window at any time if you
  46. have set up the options as you like them. I have also added an auto-revise
  47. option, which checks every second for a change in the list of fonts. If it
  48. finds a difference, it re-assembles the font menu. If you remove all the
  49. fonts, PrintLbls will complain!
  50.  
  51.         Version 1.12 uses version 2.00 of the sliding heap manager and hence
  52. can be used alongside applications such as PowerBase &c. that also use
  53. SlidingHeap 2.00. Also, the labels setup window now enforces that measurements
  54. (apart from those in points and millipoints) are given only to 3 signifcant
  55. figures: avoiding long trails of decimals that may occur when units are
  56. converted.
  57.  
  58.         Version 1.20 features error handling within the error handler (wow!),
  59. RiscOS 3 awareness (non-use of InterfaceManager, downloading/declaring fonts
  60. to PostScript printers) and allows the use of fractional point sizes (e.g.
  61. 11.5pt).
  62.  
  63.         Version 1.30 allows you to specify from which label on the first sheet
  64. printing will start. (H.Bazley)
  65.  
  66.         Version 1.31 (RISC-OS 3 ONLY!)
  67.         This version features improved font menu handling using RISC-OS 3's
  68.  ability to create a font menu structure on the programmer's behalf.   Each font
  69. 'family' is on a separate sub-menu - no more twelve-foot menus!   The font
  70. menu title reflects which icon is currently being altered, and the currently
  71. selected font is ticked on the menu.   Clicking MENU over the 'Name',
  72. 'Address' and 'Last line' icons now opens the appropriately-titled font menu
  73. directly.
  74.         Should give correct names to fonts containing Encoding files
  75. (i.e. iSV Typography CD-ROM).
  76.         Fonts are redrawn when changing mode.
  77.         The 'Revise font list' button and 'auto-revise' menu option are no
  78.         longer relevant and have been removed. (H.Bazley)
  79.  
  80.         Version 1.33 (Modifications by Derek Haslam, 14-12-99)
  81.         Dialogue boxes substantially modified to improve clarity and comply with
  82. RISC OS Style Guide. 'Save' button renamed 'Save choices' and transferred
  83. from Label setup to Main window, making it more obvious that it saves both
  84. label setup and font data.
  85.  
  86.         Version 1.35 finally uses the 'official' font name decoding techniques -
  87. so clicking on "GylesSans" where this font is held on CD-ROM will display
  88. GylesSans.Black.Outline where this is the top entry in the submenu, rather
  89. than GylesSans.BLACK.OUTLINE.   A minor point, but it was annoying me....
  90. Also fixed various other font/menu related bugs. (H.Bazley)
  91.  
  92.  
  93. Using !PrintLbls
  94. ----------------
  95.  
  96.         The input file is a simple CSV file. Each 'record' for a single
  97. person (or other entity) is terminated by a 'null', e.g. a linefeed or a
  98. carraige return. Each line for the address is separated by a comma. If the
  99. first character of a line is character 34 (") then all commas are skipped
  100. until a second 34. This allows commas to occur in a line, and also fits in
  101. with many programs' idea of a CSV file.
  102.  
  103.         Here is an example record:
  104.  
  105. Steven Haslam,"112 Keighley Road",Colne,Lancashire,BB8 0PH
  106.  
  107.         In !Edit, each record would be a separate line in the file.
  108.  
  109.         The filetype can be either &FFF (text) or &DFE (official CSV
  110. filetype)
  111.  
  112.         !PrintLbls is loaded by double-clicking on its icon in the Filer.
  113. When it has loaded it checks that some fonts are present, and if some are it
  114. checks them against the list it holds of fonts to be used. If any fonts are
  115. to be used that are not present, you will be informed and a present font
  116. will be substituted. (0.90 may have contained a font in itself that was
  117. added to the Path, this is not done with 1.10).
  118.  
  119.         So, you should now have the PrintLbls icon on your icon bar. Click
  120. on it with SELECT and you will get the main window. This contains: a load
  121. target for a CSV file, a box with information about the current printer
  122. driver, a 'Print' button, a box with information about the current fonts
  123. 'Set up labels' and 'Save choices' buttons and a writable icon to specify
  124. where on the first label sheet the first record should be printed. The
  125. latter feature makes it possible to use up partly-used sheets of labels.
  126.  
  127.         To load a CSV file, drag it to the load target (the large arrow). The
  128. text icon will change from "« None »" to the file name, or "Data from
  129. TaskName" if it has been dragged straight from a task (e.g. !Edit).
  130.  
  131.         If you have a printer driver installed, then you can 'press' the
  132. Print button and the labels will be printed through your printer driver. If
  133. all the labels can not be fitted onto one page, then more than one page will
  134. be used.
  135.  
  136.         Alternatively, if all your options have been set up as below, you
  137. can simply drag your CSV file to the icon on the icon bar. A confirmation
  138. box will ask you if you want to print it as the current printer resolution.
  139. Therefore you do not have to open the window at any time.
  140.  
  141.         It is unlikely that your labels will be the same size as they are by
  142. default, or that you will want the same font types & sizes as I use. To
  143. change the label sizes, click on the 'Set up labels' button. This opens the
  144. setup window. It contains a diagrammatic sprite of the label relative the
  145. the top left of a page. The measurements are in writeable icons, click on
  146. them and use the keyboard to alter them. Allowed units are: "in", "pt", "mp"
  147. (millipoints), "mm" and "cm". All units are stored as millipoints
  148. internally, so rounding errors may occur when using millimetres or
  149. centimetres.
  150.  
  151.         You will also see two writable icons for how many labels there are
  152. across and down the page. When printing, the program goes across before
  153. going down, so you can use half a page at first and then another half later.
  154.  
  155.         The 'Indentation per line' icon allows the 'tabbing' of each line to
  156. be changed. I generally use 0.1 or 0.2 inches. Setting this to 0 makes each
  157. line start at the same place, setting it to a negative value allows the
  158. lines to slope backwards!
  159.  
  160.         When you have entered the required data click on the 'Close' button.
  161.  
  162.         You can have different fonts for the name, the address and the last line
  163. (i.e. put the postcode {!} in bold). There are two writable icons in the main
  164. window that control the size (in points) of the font used for the name and the
  165. address (including the last line).
  166.  
  167.         To set up the fonts either:-
  168.  
  169. (a)  click MENU over the main window and go to sub-menu 'Fonts'. This leads
  170. to a submenu containing 'Name', 'Address' and 'Last line'.
  171.  
  172. OR:
  173.  
  174. (b) click SELECT or MENU over the pop-up menu buttons beside the fields
  175. which show the fonts selected for name, address and last line.
  176.  
  177.  
  178.  
  179.         Clicking the 'Save choices' button saves both the label setup
  180. data and the chosen font information.
  181.  
  182. Below these  icons there is a writable icon labelled 'Start at label no:' -
  183. this controls whether !PrintLbls starts at the top left-hand corner of a
  184. sheet of labels or further down (so that you can finish off a half-used
  185. sheet before starting a new one).   Normally this will be set to 1 so that
  186. you start at the first label on a new page but you can set the program to
  187. start printing at any label on a page.   If you set this number to be
  188. greater than the number of the last label on the page, !PrintLbls will
  189. complain!   Labels on the sheet are numbered in the order in which
  190. !PrintLbls prints them, across first and then down;  for example, if there
  191. are two columns of labels on each sheet, they would be numbered like this:
  192.  
  193.          1      2
  194.          3      4
  195.          5      6  etc.
  196.  
  197.         The setting of this icon only applies to the first page of labels you
  198. print - if your labels overflow onto subsequent pages these will start from the
  199. top as normal.   Note also that the contents of this icon will NOT be saved in
  200. the configuration file;  the default value will always be 1.  (H.Bazley)
  201.  
  202.         On the main window's menu is the option 'Remove CSV' which removes
  203. the CSV file from memory.
  204.  
  205.         Also on the main window's menu is the sub-menu option 'Units'. This
  206. controls which units are used by default in the setup window. Notice that
  207. because clicking OK in the setup window changes the strings to real numbers,
  208. rounding error may occur if the window has been displayed in metric measure
  209. when the measurements are intended for imperial lengths. Notice that any
  210. measuring system can be used in the setup window, you can even combine
  211. points, millimetres, inches and centimetres all at the same time, although
  212. this is not good for your sanity!
  213.  
  214.         From the icon bar menu, there are three options: 'Info' leads to the
  215. standard info box, 'Save setup' re-saves the configuration file and 'Quit'
  216. has the expected effect.
  217.  
  218.         Information kept in the configuration file is as follows:
  219.  
  220.         The three font names, the two font sizes, the label measurements,
  221. the number of labels across and down, and the default units for the setup
  222. window. The 'setup' file (in the PrintLbls directory) is plain text.
  223.  
  224.         Here is an example file, the | is not part of the file, but denotes
  225. comments:
  226.  
  227. Homerton.Medium.Oblique | 'Name' font
  228. Homerton.Medium         | 'Address' font
  229. Homerton.Bold           | 'Last line' font
  230. 24 | 'Name' size (pt)
  231. 12 | 'Address' size (pt)
  232. 18000  | top margin (mp)
  233. 36000  | left margin (mp)
  234. 288000 | horizontal edge-to-edge (mp)
  235. 100800 | vertical edge-to-edge (mp)
  236. 14400  | identation per line (mp)
  237. 2  | labels on page horizontally
  238. 8  | labels on page vertically
  239. in | preferred units for setup window
  240.  
  241.         There is a problem with labels on dot matrix printers. Acorn's
  242. printer drivers are page-based. This is not a criticism of the printer
  243. drivers, it is entirely reasonable. However, most dot matrix printer labels
  244. are continuous rolls, perhaps with perforations every six labels or so.
  245. Therefore, it is best to define a special page size for them. It might also
  246. be necessary to define a separate printer for them, so that form feeds come
  247. out right: if the line feed value is 1/6th of an inch (70 line approx. on
  248. A4), then you will need to work out the amount of lines per page and add to
  249. job_prologue:
  250.  
  251.         "<27>C" and then the character for the number of lines. This makes
  252. the form feeding come out right. e.g. if it was 18 lines, do "<27>C<18>".
  253.  
  254.         RiscOS 3 printer drivers now have a way of defining this! You need
  255. to declare the text length of a page if you are using a DP-type printer.
  256.  
  257.         Because of its nature, this problem *only* occurs with continuous
  258. roll labels and sheets.
  259.  
  260.         I think that about sums it up! Please feel free to contact me with
  261. any problems or suggestions for mods. etc.
  262.  
  263. I can be contacted as:
  264.  
  265. Steven Haslam
  266. 112 Keighley Road,
  267. Colne,
  268. Lancashire,
  269. BB8 0PH
  270.  
  271. ****************************************************************************
  272.  
  273. BUG HISTORY (summary)
  274. -----------
  275.  
  276. 0.90- First released version (23/05/91)
  277. 1.00- Added definable label sizes as part of the 'setup' file. (17/11/91)
  278. 1.10- Added setup window for label sizes
  279.       Improved printing routine, made it faster (than 1.00 anyway)
  280.       Added multi-unit support
  281.       Took away error box from program, was causing trouble
  282. 1.11- Indentation level now changeable (15/12/91)
  283.       Took away second error box if 'ESCAPE' pressed during printing
  284.       Improved point size checking (made it work)
  285.       You don't have to enter units in setupW
  286.       You can now drag files to the icon bar
  287.       Fonts auto-revise
  288. 1.12- New SlidingHeap
  289.       Sig. figs. in label setup window
  290. 1.20- PDriver_DeclareFont calls added (for PostScript printing)
  291.       Templates3 file now used!
  292.       InterfaceManager module not needed for RiscOS 3 users (presumably most of you)
  293.       Error handler added within error handler
  294.       Font sizes now stored as reals, not integers. (24/6/95)
  295. 1.30- "Start at label no:" icon added to make it easier to start printing
  296.       halfway down a half-used sheet of labels (H.Bazley 8/2/1999)
  297. 1.31- Major revision of font menu handling.   RiscOS 2-related items removed.
  298.       (H.Bazley 15/10/1999)
  299. 1.35- Further revision of font handling to use Font_DecodeMenu SWI.
  300.       Ticks on font sub-menus now updated when menu re-opened with ADJUST.
  301.       (H.Bazley 20/2/2000)
  302. ****************************************************************************
  303.  
  304. CREDITS
  305. -------
  306.  
  307. I wrote !PrintLbls. I also wrote the memory manager (SlidingHeap).  The
  308. printer drivers are copyright Acorn Computers and outline fonts are
  309. copyright whoever made them.
  310.  
  311. ****************************************************************************
  312.  
  313. PLUGS
  314. -----
  315.  
  316. If you have enjoyed using this product (ahem) perhaps you would like to know
  317. of other products I have written or co-written? This includes Powerbase, a
  318. fairly powerful tree-based database, which is already in semi-commercial use
  319. in running a sixth form college. Write to me at an address above.
  320.  
  321. ****************************************************************************
  322.  
  323. COPYRIGHT
  324. ---------
  325.  
  326. This program is copyright © 1991 Steven Haslam.
  327.  
  328.     This program is free software; you can redistribute it and/or modify
  329.     it under the terms of the GNU General Public License as published by
  330.     the Free Software Foundation; either version 2 of the License, or
  331.     (at your option) any later version.
  332.  
  333.     This program is distributed in the hope that it will be useful,
  334.     but WITHOUT ANY WARRANTY; without even the implied warranty of
  335.     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  336.     GNU General Public License for more details.
  337.  
  338.     You should have received a copy of the GNU General Public License
  339.     along with this program; if not, write to the Free Software
  340.     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  341. ****************************************************************************
  342.